﻿using System;
using System.Collections.Generic;
using System.Text;
using Sinacor.Infra.Service.Validation;
using Sinacor.Infra.Service.Common;

namespace Sinacor.Servico.Bovespa.Corretagem.BusinessEntity
{
    /// <summary>
    /// Entidade de negocio Verificacao
    /// </summary>
    public class Verificacao : BaseBusinessEntity
    {
        #region Campos

        /// <summary>
        /// Campo _agente
        /// </summary>
        private System.Int32? _agente;

        /// <summary>
        /// Campo _assessor
        /// </summary>
        private System.Int32? _assessor;

        /// <summary>
        /// Campo _carteira
        /// </summary>
        private System.Int32 _carteira;

        /// <summary>
        /// Campo _ativo
        /// </summary>
        private System.String _ativo;

        /// <summary>
        /// Campo _operador
        /// </summary>
        private System.Int32? _operador;

        /// <summary>
        /// Campo _codigoPoliticaCorretagem
        /// </summary>
        private System.Int32? _codigoPoliticaCorretagem;

        /// <summary>
        /// Campo _codigoTabelaPadrao
        /// </summary>
        private System.Int32? _codigoTabelaPadrao;

        /// <summary>
        /// Campo _codigoTabelaBeneficio
        /// </summary>
        private System.Int32? _codigoTabelaBeneficio;

        /// <summary>
        /// Campo _tipoNaturezaOperacao
        /// </summary>
        private Enum.TipoNaturezaOperacao? _tipoNaturezaOperacao;

        /// <summary>
        /// Campo _dataInicial
        /// </summary>
        private System.DateTime _dataInicial;

        /// <summary>
        /// Campo _tipoMercado
        /// </summary>
        private Enum.TipoMercado? _tipoMercado;

        #endregion

        #region Construtores

        /// <summary>
        /// Construtor Verificacao
        /// </summary>
        public Verificacao()
        {

        }

        /// <summary>
        /// Construtor Verificacao
        /// </summary>
        public Verificacao(System.Int32 agente, System.Int32 assessor, System.Int32 carteira, System.String ativo, System.Int32 operador, System.Int32 codigoPoliticaCorretagem, System.Int32 codigoTabelaPadrao, System.Int32 codigoTabelaBeneficio, Enum.TipoNaturezaOperacao tipoNaturezaOperacao, System.DateTime dataInicial, Enum.TipoMercado tipoMercado)
        {
            this._agente = agente;
            this._assessor = assessor;
            this._carteira = carteira;
            this._ativo = ativo;
            this._operador = operador;
            this._codigoPoliticaCorretagem = codigoPoliticaCorretagem;
            this._codigoTabelaPadrao = codigoTabelaPadrao;
            this._codigoTabelaBeneficio = codigoTabelaBeneficio;
            this._tipoNaturezaOperacao = tipoNaturezaOperacao;
            this._dataInicial = dataInicial;
            this._tipoMercado = tipoMercado;
        }

        #endregion

        #region Propriedades

        /// <summary>
        /// Propriedade Agente
        /// </summary>
        public System.Int32? Agente
        {
            get { return this._agente; }
            set { this._agente = value; }
        }

        /// <summary>
        /// Propriedade Assessor
        /// </summary>
        public System.Int32? Assessor
        {
            get { return this._assessor; }
            set { this._assessor = value; }
        }

        /// <summary>
        /// Propriedade Carteira
        /// </summary>
        public System.Int32 Carteira
        {
            get { return this._carteira; }
            set { this._carteira = value; }
        }

        /// <summary>
        /// Propriedade Ativo
        /// </summary>
        public System.String Ativo
        {
            get { return this._ativo; }
            set { this._ativo = value; }
        }

        /// <summary>
        /// Propriedade Operador
        /// </summary>
        public System.Int32? Operador
        {
            get { return this._operador; }
            set { this._operador = value; }
        }

        /// <summary>
        /// Propriedade CodigoPoliticaCorretagem
        /// </summary>
        public System.Int32? CodigoPoliticaCorretagem
        {
            get { return this._codigoPoliticaCorretagem; }
            set { this._codigoPoliticaCorretagem = value; }
        }

        /// <summary>
        /// Propriedade CodigoTabelaPadrao
        /// </summary>
        public System.Int32? CodigoTabelaPadrao
        {
            get { return this._codigoTabelaPadrao; }
            set { this._codigoTabelaPadrao = value; }
        }

        /// <summary>
        /// Propriedade CodigoTabelaBeneficio
        /// </summary>
        public System.Int32? CodigoTabelaBeneficio
        {
            get { return this._codigoTabelaBeneficio; }
            set { this._codigoTabelaBeneficio = value; }
        }

        /// <summary>
        /// Propriedade TipoNaturezaOperacao
        /// </summary>
        public Enum.TipoNaturezaOperacao? TipoNaturezaOperacao
        {
            get { return this._tipoNaturezaOperacao; }
            set { this._tipoNaturezaOperacao = value; }
        }

        /// <summary>
        /// Propriedade DataInicial
        /// </summary>
        public System.DateTime DataInicial
        {
            get { return this._dataInicial; }
            set { this._dataInicial = value; }
        }

        /// <summary>
        /// Propriedade TipoMercado
        /// </summary>
        public Enum.TipoMercado? TipoMercado
        {
            get { return this._tipoMercado; }
            set { this._tipoMercado = value; }
        }

        #endregion
    }
}

